package com.ruoyi.net.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 网元-告警对象 element_alarm
 * 
 * @author net
 * @date 2024-11-17
 */
public class ElementAlarm extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private String id;

    /**
     * 网元id
     */
    @Excel(name = "网元id")
    private String elementId;

    /**
     * 名称
     */
    @Excel(name = "名称")
    private String name;

    /**
     * 英文名称
     */
    @Excel(name = "英文名称")
    private String eName;

    /**
     * 确认状态
     */
    @Excel(name = "确认状态")
    private String confirmStatus;

    /**
     * 清除状态
     */
    @Excel(name = "清除状态")
    private String clearStatus;

    /**
     * 告警源
     */
    @Excel(name = "告警源")
    private String source;

    /**
     * 定位信息
     */
    @Excel(name = "定位信息")
    private String location;

    /**
     * 槽位号
     */
    @Excel(name = "槽位号")
    private String cell;

    /**
     * 盘端口号
     */
    @Excel(name = "盘端口号")
    private String diskPort;

    /**
     * 端口标注
     */
    @Excel(name = "端口标注")
    private String terminalLabel;

    /**
     * 当前告警持续时间
     */
    @Excel(name = "当前告警持续时间")
    private String alarmContinueDuration;

    /**
     * 关键信息
     */
    @Excel(name = "关键信息")
    private String keyInfo;

    /**
     * 附加信息
     */
    @Excel(name = "附加信息")
    private String addition;

    /**
     * 告警类别
     */
    @Excel(name = "告警类别")
    private String alarmType;

    /**
     * 网元类型
     */
    @Excel(name = "网元类型")
    private String elementType;

    /**
     * 网元备注
     */
    @Excel(name = "网元备注")
    private String elementDesc;

    /**
     * IP
     */
    @Excel(name = "IP")
    private String ip;

    /**
     * 网管清除时间
     */
    @Excel(name = "网管清除时间")
    private String clearTime;

    /**
     * 工程状态
     */
    @Excel(name = "工程状态|告警级别")
    private String projectStatus;

    /**
     * 告警代码
     */
    @Excel(name = "告警代码")
    private String alarmCode;

    /**
     * 线路号
     */
    @Excel(name = "线路号")
    private String lineNo;

    /**
     * 产生原因
     */
    @Excel(name = "产生原因")
    private String cause;

    /**
     * 处理建议
     */
    @Excel(name = "处理建议")
    private String suggest;

    /**
     * 维护经验
     */
    @Excel(name = "维护经验")
    private String experience;

    /**
     * 查询条件，告警开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;

    /**
     * 查询条件，告警结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;

    /**
     * 条目状态（0未激活 1已激活）
     */
    @Excel(name = "条目状态", readConverterExp = "0=未激活,1=已激活")
    private String status;

    /**
     * 删除标记（0正常 2删除）
     */
    private String delFlag;

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setElementId(String elementId) {
        this.elementId = elementId;
    }

    public String getElementId() {
        return elementId;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void seteName(String eName) {
        this.eName = eName;
    }

    public String geteName() {
        return eName;
    }

    public void setConfirmStatus(String confirmStatus) {
        this.confirmStatus = confirmStatus;
    }

    public String getConfirmStatus() {
        return confirmStatus;
    }

    public void setClearStatus(String clearStatus) {
        this.clearStatus = clearStatus;
    }

    public String getClearStatus() {
        return clearStatus;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public String getSource() {
        return source;
    }

    public void setLocation(String location) {
        this.location = location;
    }

    public String getLocation() {
        return location;
    }

    public void setCell(String cell) {
        this.cell = cell;
    }

    public String getCell() {
        return cell;
    }

    public void setDiskPort(String diskPort) {
        this.diskPort = diskPort;
    }

    public String getDiskPort() {
        return diskPort;
    }

    public void setTerminalLabel(String terminalLabel) {
        this.terminalLabel = terminalLabel;
    }

    public String getTerminalLabel() {
        return terminalLabel;
    }

    public void setAlarmContinueDuration(String alarmContinueDuration) {
        this.alarmContinueDuration = alarmContinueDuration;
    }

    public String getAlarmContinueDuration() {
        return alarmContinueDuration;
    }

    public void setKeyInfo(String keyInfo) {
        this.keyInfo = keyInfo;
    }

    public String getKeyInfo() {
        return keyInfo;
    }

    public void setAddition(String addition) {
        this.addition = addition;
    }

    public String getAddition() {
        return addition;
    }

    public void setAlarmType(String alarmType) {
        this.alarmType = alarmType;
    }

    public String getAlarmType() {
        return alarmType;
    }

    public void setElementType(String elementType) {
        this.elementType = elementType;
    }

    public String getElementType() {
        return elementType;
    }

    public void setElementDesc(String elementDesc) {
        this.elementDesc = elementDesc;
    }

    public String getElementDesc() {
        return elementDesc;
    }

    public void setIp(String ip) {
        this.ip = ip;
    }

    public String getIp() {
        return ip;
    }

    public void setClearTime(String clearTime) {
        this.clearTime = clearTime;
    }

    public String getClearTime() {
        return clearTime;
    }

    public void setProjectStatus(String projectStatus) {
        this.projectStatus = projectStatus;
    }

    public String getProjectStatus() {
        return projectStatus;
    }

    public void setAlarmCode(String alarmCode) {
        this.alarmCode = alarmCode;
    }

    public String getAlarmCode() {
        return alarmCode;
    }

    public void setLineNo(String lineNo) {
        this.lineNo = lineNo;
    }

    public String getLineNo() {
        return lineNo;
    }

    public void setCause(String cause) {
        this.cause = cause;
    }

    public String getCause() {
        return cause;
    }

    public void setSuggest(String suggest) {
        this.suggest = suggest;
    }

    public String getSuggest() {
        return suggest;
    }

    public void setExperience(String experience) {
        this.experience = experience;
    }

    public String getExperience() {
        return experience;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("elementId", getElementId())
                .append("name", getName())
                .append("eName", geteName())
                .append("confirmStatus", getConfirmStatus())
                .append("clearStatus", getClearStatus())
                .append("source", getSource())
                .append("location", getLocation())
                .append("cell", getCell())
                .append("diskPort", getDiskPort())
                .append("terminalLabel", getTerminalLabel())
                .append("alarmContinueDuration", getAlarmContinueDuration())
                .append("keyInfo", getKeyInfo())
                .append("addition", getAddition())
                .append("alarmType", getAlarmType())
                .append("elementType", getElementType())
                .append("elementDesc", getElementDesc())
                .append("ip", getIp())
                .append("clearTime", getClearTime())
                .append("projectStatus", getProjectStatus())
                .append("alarmCode", getAlarmCode())
                .append("lineNo", getLineNo())
                .append("cause", getCause())
                .append("suggest", getSuggest())
                .append("experience", getExperience())
                .append("status", getStatus())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .append("startTime", getStartTime())
                .append("endTime", getEndTime())
                .toString();
    }
}